<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:rich="http://richfaces.org/rich"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:a4j="http://richfaces.org/a4j"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:head>
        <title>Consultar Usuarios</title>
    </h:head>
    <h:body>
        <ui:composition template="../templateInt.xhtml">
            <ui:define name="content">
                <h:form>
                    <a4j:outputPanel id="usuariosOutputPanel" ajaxRendered="true">
                        <rich:collapsiblePanel id="opcionesUsuariosCollapsiblePanel" header="#{msj.collapsibleOpcionesUsuario}" expanded="true">
                            <h:panelGrid columns="6">
                                <h:outputText value="Username Usuario"/>
                                <h:inputText value="#{consultaUsuariosBean.usernameUsuario}"/>
                                <h:outputText value="Cédula Usuario"/>
                                <h:inputText value="#{consultaUsuariosBean.numeroDocumento}"
                                             onkeypress="if (event.which &lt; 48 || event.which &gt; 57)
                                                             return false;"/>
                                <h:outputText value="Cargo"/>
                                <h:selectOneMenu value="#{consultaUsuariosBean.cargoSeleccionado}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione un cargo"/>
                                    <f:selectItems value="#{consultaUsuariosBean.cargosItems}"/>
                                </h:selectOneMenu>
                                <h:outputText value="Gerencia" rendered="#{seguridadBean.isAsignador}"/>
                                <h:selectOneMenu value="#{consultaUsuariosBean.gerenciaSeleccionada}" rendered="#{seguridadBean.isAsignador}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione una gerencia"/>
                                    <f:selectItems value="#{consultaUsuariosBean.gerenciasItems}"/>
                                </h:selectOneMenu>
                                <h:outputText value="Ciudad"/>
                                <h:selectOneMenu value="#{consultaUsuariosBean.ciudadSeleccionada}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione una ciudad"/>
                                    <f:selectItems value="#{consultaUsuariosBean.ciudadesItems}"/>
                                </h:selectOneMenu>
                                <h:outputText value="Correo"/>
                                <h:inputText value="#{consultaUsuariosBean.correoUsuario}"/>
                                <!--<h:outputText value="Rol"/>
                                <h:selectOneMenu value="#{consultaUsuariosBean.rolSeleccionado}">
                                    <f:selectItem noSelectionOption="true" itemLabel="Seleccione un rol"/>
                                    <f:selectItems value="#{consultaUsuariosBean.rolesItems}"/>
                                </h:selectOneMenu>-->
                            </h:panelGrid>
                            <a4j:commandButton id="buscarButton" value="#{msj.buttonBuscar}" actionListener="#{consultaUsuariosBean.buscarUsuarios}"
                                               render="tableUsuariosOutputPanel"/>
                            <a4j:commandButton id="limpiarButton" value="#{msj.buttonLimpiar}" actionListener="#{consultaUsuariosBean.limpiarCampos}"
                                               render="tableUsuariosOutputPanel"/>
                        </rich:collapsiblePanel>
                    </a4j:outputPanel>
                    <br/>
                    <center>
                        <a4j:outputPanel id="tableUsuariosOutputPanel" ajaxRendered="true">
                            <rich:dataTable id="tableUsuarios" value="#{consultaUsuariosBean.usuarios}" var="usuario"
                                            rows="#{consultaUsuariosBean.filas}">
                                <f:facet name="header">
                                    <h:outputText value="#{msj.headerDataTableUsuarios}"/>
                                </f:facet>
                                <rich:column id="idUsuarioColumn" rendered="false">
                                    <h:outputText id="idUsuarioOutputText" value="#{usuario.idUsuario}" />
                                </rich:column>
                                <rich:column id="nombreUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Nombres"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="nombres"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="nombreUsuarioOutputText" value="#{usuario.nombres}"/>
                                </rich:column>
                                <rich:column id="apellidoUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Apellidos"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="apellidos"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="apellidosUsuarioOutputText" value="#{usuario.apellidos}"/>
                                </rich:column>
                                <rich:column id="usernameUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Username"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="username"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="usernameUsuarioOutputText" value="#{consultaUsuariosBean.buscarUsernameUsuario(usuario)}"/>
                                </rich:column>
                                <rich:column id="documentoUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Numero Documento"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="numeroDocumento"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="documentoUsuarioOutputText" value="#{usuario.numeroDocumento}">
                                        <f:convertNumber groupingUsed="true"/>
                                    </h:outputText>
                                </rich:column>
                                <rich:column id="cargoUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Cargo"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="cargo.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="cargoUsuarioOutputText" value="#{usuario.cargo.nombre}"/>
                                </rich:column>
                                <rich:column id="gerenciaUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Gerencia"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="gerencia.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="gerenciaUsuarioOutputText" value="#{usuario.gerencia.nombre}"/>
                                </rich:column>
                                <rich:column id="ciudadUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Ciudad"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="ciudad.nombre"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="ciudadUsuarioOutputText" value="#{usuario.ciudad.nombre}"/>
                                </rich:column>
                                <rich:column id="correoUsuarioColumn">
                                    <f:facet name="header">
                                        <h:panelGrid columns="2">
                                            <a4j:commandLink value="Correo"
                                                             execute="@this" action="#{consultaUsuariosBean.ordenar()}"
                                                             render="tableUsuarios">
                                                <f:param name="sortProperty" value="correo"/>                                        
                                            </a4j:commandLink>
                                            <h:graphicImage value="../imagenes/down_icon.gif"
                                                            alt="" rendered="#{!consultaUsuariosBean.ascendiente}"/>
                                            <h:graphicImage value="../imagenes/up_icon.gif"
                                                            rendered="#{consultaUsuariosBean.ascendiente}"/>
                                        </h:panelGrid>
                                    </f:facet>
                                    <h:outputText id="correoUsuarioOutputText" value="#{usuario.correo}"/>
                                </rich:column>
                                <rich:column id="rolUsuarioColumn">
                                    <f:facet name="header">
                                        <h:outputText value="Rol"/>
                                    </f:facet>
                                    <h:outputText id="rolUsuarioOutputText" value="#{consultaUsuariosBean.buscarRolUsuario(usuario)}"/>
                                </rich:column>
                                <f:facet name="footer" >
                                    <rich:dataScroller for="tableUsuarios" rendered="#{consultaUsuariosBean.paginado()}" maxPages="5"/>
                                </f:facet>
                            </rich:dataTable>
                        </a4j:outputPanel>
                    </center>
                </h:form>
            </ui:define>
        </ui:composition>
    </h:body>
</html>